Documents created using current word processors, e.g., Microsoft© Word©, which is commercially available from the Microsoft Corporation of Redmond, Wash., or OpenOffice, which is an opensource product available at www.opensource.org, often contain a variety of styles within a single document. In general, a style is a set of attributes that characterize how characters in a document should be formatted. The word processors utilize two main approaches to manage these various styles within a single document. The first approach is to use named styles. A named style is a set of attributes collected together such that all the attributes can be applied to the characters of a selected region at the same time with a single gesture. In addition, the set of attributes typically has an abstract name, for example “Heading”, that refers to the purpose of the style sheet rather than the visual characteristics of the style. With the named styles approach, a user can select a region of text and apply a named style, e.g., “Heading” or “Body text” to all text located within that region. The style defines the characteristics of the text including the font and other attributes. For example, the style “Heading” can be defined as Helvetica 24 point bold or Times 10 point regular. Changes to a given named style affect the text in all regions within a document that have been assigned to that style, and a given word processing program provides the necessary interfaces to change the style attributes of each named style. The use of named styles provides the benefit of using a single action to effect changes consistently across the entire document.
The second approach to styling a document is to use direct or manual manipulation to create adhoc styles. In this approach, a user selects a region of text and manually sets the style of the text within the selected region using the affordances provided by the word processor to choose the font face, size, obliqueness and other factors. Most users are familiar with the direct manipulation approach and, therefore, are most likely to use this approach to implement the desired styles within a given document. However, the direct manipulation approach has the drawback that users wishing to make a consistent change must repetitively select each region of the document and apply the desired style separately to each selected region. This practice is laborious, time-consuming and error-prone and results in a variety of adhoc styles being applied across the document. The use of adhoc styles makes it difficult to keep styles consistent across a document. For instance, if the user wants to make all headings bold 16-pt Arial text, the user must laboriously search through the document, locate each instance of the desired heading, and manually apply the desired style. If the user had employed named styles, the same modification could have been made by making a single change to the named style.
Although named styles make style formatting easier and more consistent, they present a level of abstraction that many users find difficult to master, because named styles are one level removed from the familiar direct-manipulation user interface. Therefore, named styles can be difficult to use, and very few users are capable of using them effectively. The use of named styles also presents issues during cut and paste and document merging. For example, merging multiple documents from different sources introduces style inconsistencies into a single merged document. Each merged document can have a different set of named styles. For example, the style for the majority of plain text in a document might be named “Body Text” style in one document and “Plain Text” style in another document. Furthermore, those two styles might have different characteristics, for example a different font size.
The deficiencies in both the named style and the adhoc style approach result in documents that have inconsistent styles. Because of these inconsistencies, documents may not have a uniform appearance, and the document becomes difficult to modify as changes made in one section of the document must be manually repeated for the remaining sections.